#ifndef __CC_PKG_QUEUE_H__
#define __CC_PKG_QUEUE_H__

/****	Public header file	*/
#include "./cc_type.h"

/****	define */
#define CFG_PKG_QUEUE   

/***	struct define	*/
typedef struct CC_Data_Packet_Queue_V4 tPkgQueue;

//
#ifdef CFG_PKG_QUEUE
extern int PkgQueue_Init(tPkgQueue* pObj ,uint32_t BufSz, uint8_t* pBuf);
extern tPkgQueue* PkgQueue_Create(uint32_t BufSz);
extern uint32_t PkgQueue_Write(tPkgQueue* pObj,uint32_t Len, uint8_t* pPkg);
extern uint32_t PkgQueue_Read(tPkgQueue* pObj,uint32_t readNum, uint8_t* pRBuf);
extern uint32_t PkgQueue_GetRecvNum(tPkgQueue* pObj);
extern uint32_t PkgQueue_GetNextPkgSz(tPkgQueue* pObj);
extern int PkgQueue_Reset(tPkgQueue* pObj);

// extern uint32_t PkgQueue_Peek(tPkgQueue* pObj,uint32_t readNum, uint8_t* pRBuf);
// extern uint32_t PkgQueue_DropOne(tPkgQueue* pObj);

#endif




#endif
